home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 7 / FM Towns Free Software Collection 7.iso / fb386 / gui / gui.bas next >
BASIC Source File  |  1993-11-30  |  4KB  |  124 lines

  1. 10 '
  2. 20 '  GUIのみ programed by IMOTO.H
  3. 30 '
  4. 40 CLEAR,,,,,300*1024 : DEF FONT"システム   12ドット"
  5. 50 DIM WIN%(8500)
  6. 60 SCREEN@ 0 : CLS : LINE(0,0)-(639,479),PSET,%5,BF
  7. 70 LINE(0,0)-(419,20),PSET,0,BF : LINE(600,0)-(619,20),PSET,0,BF
  8. 80 '
  9. 90 BY=0 : BX=0 : BDX=99 : GOSUB *SW_OFF : BX=600 : BDX=19 : GOSUB *SW_OFF
  10. 100 BDX=79
  11. 110 FOR BX=100 TO 419 STEP 80 : GOSUB *SW_OFF : NEXT
  12. 120 '
  13. 130 MOUSE 0 : MOUSE 1,320,240,1
  14. 135 '
  15. 140 WHILE MOUSE(2,0)=0 : WEND : MX=MOUSE(0) : MY=MOUSE(1)
  16. 150 IF MY<20 THEN GOSUB *MENU_BAR
  17. 160 GOTO 140
  18. 1000 '
  19. 1010 ' ... button
  20. 1020 '
  21. 1030 ' ↓ スイッチオフの状態(うきでてる)
  22. 1040 '
  23. 1045 *SW_OFF
  24. 1050     FOR J=0 TO 1
  25. 1060       CONNECT(BX+J,BY+20-J)-(BX+J,BY+J)-(BX-J+BDX-1,BY+J),7
  26. 1065       CONNECT(BX+J+1,BY+20-J)-(BX-J+BDX,BY+20-J)-(BX-J+BDX,BY+J),%7
  27. 1070     NEXT
  28. 1075  RETURN
  29. 1080 '
  30. 1090 ' ↓ スイッチオンの状態(へこんでる)
  31. 1100 '
  32. 1105 *SW_ON
  33. 1110     FOR J=0 TO 1
  34. 1120       CONNECT(BX+J,BY+20-J)-(BX+J,BY+J)-(BX-J+BDX-1,BY+J),%7
  35. 1125       CONNECT(BX+J+1,BY+20-J)-(BX-J+BDX,BY+20-J)-(BX-J+BDX,BY+J),7
  36. 1130     NEXT
  37. 1135  RETURN
  38. 1140 '
  39. 1150 ' ... window
  40. 1160 '
  41. 1170 ' ↓ ウィンドウ描画
  42. 1180 '
  43. 1185 *WIN_ON
  44. 1190     GET@A(WX,WY)-(WX+WDX,WY+WDY),WIN%
  45. 1200     LINE(WX,WY)-(WX+WDX,WY+WDY),PSET,0,BF
  46. 1205     LINE(WX+1,WY+1)-(WX+WDX-3,WY+WDY-3),PSET,7,BF
  47. 1210 RETURN
  48. 1220 '
  49. 1230 ' ↓ ウィンドウ消去
  50. 1240 '
  51. 1245 *WIN_OFF
  52. 1250     PUT@A(WX,WY)-(WX+WDX,WY+WDY),WIN% : RETURN
  53. 1260 '
  54. 1261 '
  55. 1265 *MENU_SELECT
  56. 1270     BY=0 : GOSUB *SW_ON
  57. 1280     WX=BX : WY=21 : WDY=N*17+3 : GOSUB *WIN_ON
  58. 1290     FOR I=1 TO N : READ A$
  59. 1300       SYMBOL(WX+10,8+17*I),A$,.75!,.75!,0
  60. 1310     NEXT
  61. 1315 '
  62. 1320    A=-2 : AA=-2
  63. 1330       WHILE MOUSE (2,0) : MX=MOUSE(0) : MY=MOUSE(1)
  64. 1335         IF MY<22 THEN 1380 ELSE IF MX<WX OR MX>WX+WDX-2 OR MY>I*17+4 THEN A=-1 : GOTO 1360
  65. 1340          A=(MY-22)\17 : IF A=AA THEN 1370
  66. 1350          LINE(WX+1,A*17+22)-(WX+WDX-3,A*17+38),XOR,7,BF
  67. 1360         IF AA>-1 THEN LINE(WX+1,AA*17+22)-(WX+WDX-3,AA*17+38),XOR,7,BF
  68. 1370       AA=A : WEND : IF A=-2 THEN WHILE MOUSE(2,0)=0 : WEND : GOTO 1320 ELSE 1390
  69. 1380     IF MX>=BX AND MX=<BX+BDX+1 THEN A=-2 : GOTO 1360 ELSE A=-3
  70. 1390     GOSUB *WIN_OFF : GOSUB *SW_OFF
  71. 1395 RETURN
  72. 1970 '
  73. 1980 '
  74. 1990 '
  75. 1995 *MENU_BAR
  76. 2000 IF MX<100 THEN 3000 ELSE IF MX<180 THEN 3500 ELSE IF MX<260 THEN 4000 ELSE IF MX<340 THEN 4500 ELSE IF MX<420 THEN 5000
  77. 2010 IF MX>599 AND MX<619 THEN 2100
  78. 2020 RETURN
  79. 2070 '
  80. 2080 ' ... EXIT
  81. 2090 '
  82. 2100 BX=600 : BY=0 : BDX=19 : GOSUB *SW_ON
  83. 2110 END
  84. 2970 '
  85. 2980 ' ... FM TOWNS
  86. 2990 '
  87. 3000 BX=0 : BDX=99 : WDX=140 : N=9 : RESTORE 3010 : GOSUB *MENU_SELECT
  88. 3010 DATA about this program,コントロールパネル,メニュー色設定,電卓,CDプレーヤー,住所録,予定表,単語登録,ドライバリスト
  89. 3020 IF A=-3 THEN 2000
  90. 3030 LOCATE 20,10 : PRINT "FM TOWNSボタンの 上から";A+1;"個め。    "
  91. 3460 RETURN
  92. 3470 '
  93. 3480 ' ... ACTION
  94. 3490 '
  95. 3500 BX=100 : BDX=79 : WDX=100 : N=5 : RESTORE 3510 : GOSUB *MENU_SELECT
  96. 3510 DATA たたく,さわる,食う,平和を祈る,血をぬく
  97. 3520 IF A=-3 THEN 2000
  98. 3530 LOCATE 20,10 : PRINT "ACTIONボタンの 上から";A+1;"個め。    "
  99. 3960 RETURN
  100. 3970 '
  101. 3980 ' ... 関西弁
  102. 3990 '
  103. 4000 BX=180 : BDX=79 : WDX=100 : N=6 : RESTORE 4010 : GOSUB *MENU_SELECT
  104. 4010 DATA いーちー,にーいー,さーん,しぃー,ごおお,ろーくー
  105. 4020 IF A=-3 THEN 2000
  106. 4030 LOCATE 20,10 : PRINT "関西弁ボタンの 上から";A+1;"個め。    "
  107. 4460 RETURN
  108. 4470 '
  109. 4480 ' ... 英語
  110. 4490 '
  111. 4500 BX=260 : BDX=79 : WDX=100 : N=5 : RESTORE 4510 : GOSUB *MENU_SELECT
  112. 4510 DATA one,two,three,four,five
  113. 4520 IF A=-3 THEN 2000
  114. 4530 LOCATE 20,10 : PRINT "英語ボタンの 上から";A+1;"個め。    "
  115. 4960 RETURN
  116. 4970 '
  117. 4980 ' ... 独語
  118. 4990 '
  119. 5000 BX=340 : BDX=79 : WDX=100 : N=5 : RESTORE 5010 : GOSUB *MENU_SELECT
  120. 5010 DATA eins,zwei,drei,fur,funf
  121. 5020 IF A=-3 THEN 2000
  122. 5030 LOCATE 20,10 : PRINT "独語ボタンの 上から";A+1;"個め。    "
  123. 5460 RETURN
  124.